home *** CD-ROM | disk | FTP | other *** search
/ Aminet 33 / Aminet 33 - October 1999.iso / Aminet / dev / asm / Tandem.lha / Tandem / Includes / IncAll.i < prev    next >
Encoding:
Text File  |  1999-08-21  |  22.0 KB  |  1,617 lines

  1. EXTERN_LIB MACRO
  2.  XREF _LVO\1
  3.  ENDM
  4. STRUCTURE MACRO
  5. \1 EQU 0
  6. SOFFSET SET \2
  7.  ENDM
  8. FPTR MACRO
  9. \1 EQU SOFFSET
  10. SOFFSET SET SOFFSET+4
  11.  ENDM
  12. BOOL MACRO
  13. \1 EQU SOFFSET
  14. SOFFSET SET SOFFSET+2
  15.  ENDM
  16. BYTE MACRO
  17. \1 EQU SOFFSET
  18. SOFFSET SET SOFFSET+1
  19.  ENDM
  20. UBYTE MACRO
  21. \1 EQU SOFFSET
  22. SOFFSET SET SOFFSET+1
  23.  ENDM
  24. WORD MACRO
  25. \1 EQU SOFFSET
  26. SOFFSET SET SOFFSET+2
  27.  ENDM
  28. UWORD MACRO
  29. \1 EQU SOFFSET
  30. SOFFSET SET SOFFSET+2
  31.  ENDM
  32. SHORT MACRO
  33. \1 EQU SOFFSET
  34. SOFFSET SET SOFFSET+2
  35.  ENDM
  36. USHORT MACRO
  37. \1 EQU SOFFSET
  38. SOFFSET SET SOFFSET+2
  39.  ENDM
  40. LONG MACRO
  41. \1 EQU SOFFSET
  42. SOFFSET SET SOFFSET+4
  43.  ENDM
  44. ULONG MACRO
  45. \1 EQU SOFFSET
  46. SOFFSET SET SOFFSET+4
  47.  ENDM
  48. FLOAT MACRO
  49. \1 EQU SOFFSET
  50. SOFFSET SET SOFFSET+4
  51.  ENDM
  52. DOUBLE MACRO
  53. \1 EQU SOFFSET
  54. SOFFSET SET SOFFSET+8
  55.  ENDM
  56. APTR MACRO
  57. \1 EQU SOFFSET
  58. SOFFSET SET SOFFSET+4
  59.  ENDM
  60. CPTR MACRO
  61. \1 EQU SOFFSET
  62. SOFFSET SET SOFFSET+4
  63.  ENDM
  64. RPTR MACRO
  65. \1 EQU SOFFSET
  66. SOFFSET SET SOFFSET+2
  67.  ENDM
  68. LABEL MACRO
  69. \1 EQU SOFFSET
  70.  ENDM
  71. STRUCT MACRO
  72. \1 EQU SOFFSET
  73. SOFFSET SET SOFFSET+\2
  74.  ENDM
  75. ALIGNWORD MACRO
  76. SOFFSET SET (SOFFSET+1)&$fffffffe
  77.  ENDM
  78. ALIGNLONG MACRO
  79. SOFFSET SET (SOFFSET+3)&$fffffffc
  80.  ENDM
  81. ENUM MACRO
  82.  IFC '\1',''
  83. EOFFSET SET 0
  84.  ENDC
  85.  IFNC '\1',''
  86. EOFFSET SET \1
  87.  ENDC
  88.  ENDM
  89. EITEM MACRO
  90. \1 EQU EOFFSET
  91. EOFFSET SET EOFFSET+1
  92.  ENDM
  93. BITDEF MACRO
  94.  BITDEF0 \1,\2,B_,\3
  95. \@BITDEF SET 1<<\3
  96.  BITDEF0 \1,\2,F_,\@BITDEF
  97.  ENDM
  98. BITDEF0 MACRO
  99. \1\3\2 EQU \4
  100.  ENDM
  101. JSRLIB MACRO
  102.  XREF _LVO\1
  103.  jsr _LVO\1(a6)
  104.  ENDM
  105. JMPLIB MACRO
  106.  XREF _LVO\1
  107.  jmp _LVO\1(a6)
  108.  ENDM
  109. BSRSELF MACRO
  110.  XREF \1
  111.  bsr \1
  112.  ENDM
  113. BRASELF MACRO
  114.  XREF \1
  115.  bra \1
  116.  ENDM
  117. BLINK MACRO
  118.  IFNE DEBUG_DETAIL
  119.  bchg.b #1,$bfe001
  120.  ENDC
  121.  ENDM
  122. TRIGGER MACRO
  123.  IFGE DEBUG_DETAIL-\1
  124.  move.w #$5555,$2fe
  125.  ENDC
  126.  ENDM
  127. CLEAR MACRO
  128.  moveq.l #0,\1
  129.  ENDM
  130. CLEARA MACRO
  131.  suba.l \1,\1
  132.  ENDM
  133. PRINTF MACRO
  134.  IFGE DEBUG_DETAIL-\1
  135.  XREF kprint_macro
  136. PUSHCOUNT SET 0
  137.  IFNC '\9',''
  138.  move.l \9,-(sp)
  139. PUSHCOUNT SET PUSHCOUNT+4
  140.  ENDC
  141.  IFNC '\8',''
  142.  move.l \8,-(sp)
  143. PUSHCOUNT SET PUSHCOUNT+4
  144.  ENDC
  145.  IFNC '\7',''
  146.  move.l \7,-(sp)
  147. PUSHCOUNT SET PUSHCOUNT+4
  148.  ENDC
  149.  IFNC '\6',''
  150.  move.l \6,-(sp)
  151. PUSHCOUNT SET PUSHCOUNT+4
  152.  ENDC
  153.  IFNC '\5',''
  154.  move.l \5,-(sp)
  155. PUSHCOUNT SET PUSHCOUNT+4
  156.  ENDC
  157.  IFNC '\4',''
  158.  move.l \4,-(sp)
  159. PUSHCOUNT SET PUSHCOUNT+4
  160.  ENDC
  161.  IFNC '\3',''
  162.  move.l \3,-(sp)
  163. PUSHCOUNT SET PUSHCOUNT+4
  164.  ENDC
  165.  movem.l a0/a1,-(sp)
  166.  lea.l PSS\@(pc),A0
  167.  lea.l 4*2(SP),A1
  168.  BSR kprint_macro
  169.  movem.l (sp)+,a0/a1
  170.  bra.s PSE\@
  171. PSS\@ dc.b \2
  172.  IFEQ (\1&1)
  173.  dc.b 13,10
  174.  ENDC
  175.  dc.b 0
  176.  ds.w 0
  177. PSE\@
  178.  lea.l PUSHCOUNT(sp),sp
  179.  ENDC
  180.  ENDM
  181. PUSHM MACRO
  182.  IFGT NARG-1
  183.  FAIL
  184.  ENDC
  185. PUSHM_COUNT SET PUSHM_COUNT+1
  186. PUSHM_\*VALOF(PUSHM_COUNT) REG \1
  187.  movem.l PUSHM_\*VALOF(PUSHM_COUNT),-(sp)
  188.  ENDM
  189. POPM MACRO
  190.  movem.l (sp)+,PUSHM_\*VALOF(PUSHM_COUNT)
  191.  IFNC '\1','NOBUMP'
  192. PUSHM_COUNT SET PUSHM_COUNT+1
  193.  ENDC
  194.  ENDM
  195. NEWLIST MACRO
  196.  MOVE.L \1,LH_TAILPRED(\1)
  197.  ADDQ.L #4,\1
  198.  CLR.L (\1)
  199.  MOVE.L \1,-(\1)
  200.  ENDM
  201. TSTLIST MACRO
  202.  IFGT NARG-1
  203.  FAIL
  204.  ENDC
  205.  IFC '\1',''
  206.  CMP.L LH_TAIL+LN_PRED(A0),A0
  207.  ENDC
  208.  IFNC '\1',''
  209.  CMP.L LH_TAIL+LN_PRED(\1),\1
  210.  ENDC
  211.  ENDM
  212. TSTLST2 MACRO
  213.  MOVE.L \1,\2
  214.  TST.L (\2)
  215.  ENDM
  216. SUCC MACRO
  217.  MOVE.L (\1),\2
  218.  ENDM
  219. PRED MACRO
  220.  MOVE.L LN_PRED(\1),\2
  221.  ENDM
  222. IFEMPTY MACRO
  223.  CMP.L LH_TAIL+LN_PRED(\1),\1
  224.  BEQ \2
  225.  ENDM
  226. IFNOTEMPTY  MACRO
  227.  CMP.L LH_TAIL+LN_PRED(\1),\1
  228.  BNE \2
  229.  ENDM
  230. TSTNODE MACRO
  231.  MOVE.L (\1),\2
  232.  TST.L (\2)
  233.  ENDM
  234. NEXTNODE MACRO
  235.  MOVE.L \1,\2
  236.  MOVE.L (\2),\1
  237.  IFC '\0',''
  238.  BEQ \3
  239.  ENDC
  240.  IFNC '\0',''
  241.  BEQ.S \3
  242.  ENDC
  243.  ENDM
  244. ADDHEAD MACRO
  245.  MOVE.L (A0),D0
  246.  MOVE.L A1,(A0)
  247.  MOVEM.L D0/A0,(A1)
  248.  MOVE.L D0,A0
  249.  MOVE.L A1,LN_PRED(A0)
  250.  ENDM
  251. ADDTAIL MACRO
  252.  ADDQ.L #LH_TAIL,A0
  253.  MOVE.L LN_PRED(A0),D0
  254.  MOVE.L A1,LN_PRED(A0)
  255.  EXG D0,A0
  256.  MOVEM.L D0/A0,(A1)
  257.  MOVE.L A1,(A0)
  258.  ENDM
  259. REMOVE MACRO
  260.  MOVE.L (A1)+,A0
  261.  MOVE.L (A1),A1
  262.  MOVE.L A0,(A1)
  263.  MOVE.L A1,LN_PRED(A0)
  264.  ENDM
  265. REMHEAD MACRO
  266.  MOVE.L (A0),A1
  267.  MOVE.L (A1),D0
  268.  BEQ.S REMHEAD\@
  269.  MOVE.L D0,(A0)
  270.  EXG.L D0,A1
  271.  MOVE.L A0,LN_PRED(A1)
  272. REMHEAD\@
  273.  ENDM
  274. REMHEADQ MACRO
  275.  MOVE.L (\1),\2
  276.  MOVE.L (\2),\3
  277.  MOVE.L \3,(\1)
  278.  MOVE.L \1,LN_PRED(\3)
  279.  ENDM
  280. REMTAIL MACRO
  281.  MOVE.L LH_TAIL+LN_PRED(A0),A1
  282.  MOVE.L LN_PRED(A1),D0
  283.  BEQ.S REMTAIL\@
  284.  MOVE.L D0,LH_TAIL+LN_PRED(A0)
  285.  EXG.L D0,A1
  286.  MOVE.L A0,(A1)
  287.  ADDQ.L #4,(A1)
  288. REMTAIL\@
  289.  ENDM
  290. ALERT MACRO
  291.  movem.l d7/a5/a6,-(sp)
  292.  move.l #\1,d7
  293.  IFNC '\2',''
  294.  lea.l \2,a5
  295.  ENDC
  296.  move.l 4,a6
  297.  jsr _LVOAlert(a6)
  298.  movem.l (sp)+,d7/a5/a6
  299.  ENDM
  300. DEADALERT MACRO
  301.  move.l #\1,d7
  302.  IFNC '\2',''
  303.  lea.l \2,a5
  304.  ENDC
  305.  move.l 4,a6
  306.  jsr _LVOAlert(a6)
  307.  ENDM
  308. INITBYTE MACRO
  309.  IFLE (\1)-255
  310.  DC.B $a0,\1
  311.  DC.B  \2,0
  312.  MEXIT
  313.  ENDC
  314.  DC.B $e0,0
  315.  DC.W \1
  316.  DC.B \2,0
  317.  ENDM
  318. INITWORD MACRO
  319.  IFLE (\1)-255
  320.  DC.B $90,\1
  321.  DC.W \2
  322.  MEXIT
  323.  ENDC
  324.  DC.B $d0,0
  325.  DC.W \1
  326.  DC.W \2
  327.  ENDM
  328. INITLONG MACRO
  329.  IFLE (\1)-255
  330.  DC.B $80,\1
  331.  DC.L \2
  332.  MEXIT
  333.  ENDC
  334.  DC.B $c0,0
  335.  DC.W \1
  336.  DC.L \2
  337.  ENDM
  338. INITSTRUCT MACRO
  339.  DS.W 0
  340.  IFC '\4',''
  341. COUNT\@ SET 0
  342.  ENDC
  343.  IFNC '\4',''
  344. COUNT\@ SET \4
  345.  ENDC
  346. CMD\@ SET (((\1)<<4)!COUNT\@)
  347.  IFLE (\2)-255
  348.  DC.B (CMD\@)!$80
  349.  DC.B \2
  350.  MEXIT
  351.  ENDC
  352.  DC.B CMD\@!$0C0
  353.  DC.B (((\2)>>16)&$0FF)
  354.  DC.W ((\2)&$0FFFF)
  355.  ENDM
  356. STRING MACRO
  357.  dc.b \1
  358.  dc.b 0
  359.  CNOP 0,2
  360.  ENDM
  361. STRINGL MACRO
  362.  dc.b 13,10
  363.  dc.b \1
  364.  dc.b 0
  365.  CNOP 0,2
  366.  ENDM
  367. STRINGR MACRO
  368.  dc.b \1
  369.  dc.b 13,10,0
  370.  CNOP 0,2
  371.  ENDM
  372. STRINGLR MACRO
  373.  dc.b 13,10
  374.  dc.b \1
  375.  dc.b 13,10,0
  376.  CNOP 0,2
  377.  ENDM
  378. LIBINIT MACRO
  379.  IFC '\1',''
  380. COUNT_LIB SET LIB_USERDEF
  381.  ENDC
  382.  IFNC '\1',''
  383. COUNT_LIB SET \1
  384.  ENDC
  385.  ENDM
  386. LIBDEF MACRO
  387. \1 EQU COUNT_LIB
  388. COUNT_LIB SET COUNT_LIB-LIB_VECTSIZE
  389.  ENDM
  390. CALLLIB MACRO
  391.  IFGT NARG-1
  392.  FAIL
  393.  ENDC
  394.  JSR \1(A6)
  395.  ENDM
  396. LINKLIB MACRO
  397.  IFGT NARG-2
  398.  FAIL
  399.  ENDC
  400.  MOVE.L A6,-(SP)
  401.  MOVE.L \2,A6
  402.  JSR \1(A6)
  403.  MOVE.L (SP)+,A6
  404.  ENDM
  405. BEGINIO MACRO
  406.  LINKLIB DEV_BEGINIO,IO_DEVICE(A1)
  407.  ENDM
  408. ABORTIO MACRO
  409.  LINKLIB DEV_ABORTIO,IO_DEVICE(A1)
  410.  ENDM
  411. DEVINIT MACRO
  412.  IFC '\1',''
  413. CMD_COUNT SET CMD_NONSTD
  414.  ENDC
  415.  IFNC '\1',''
  416. CMD_COUNT SET \1
  417.  ENDC
  418.  ENDM
  419. DEVCMD MACRO
  420. \1 EQU CMD_COUNT
  421. CMD_COUNT SET CMD_COUNT+1
  422.  ENDM
  423. INT_ABLES MACRO
  424.  XREF _intena
  425.  ENDM
  426. DISABLE MACRO
  427.  IFC '\1',''
  428.  MOVE.W #$04000,_intena
  429.  ADDQ.B #1,IDNestCnt(A6)
  430.  MEXIT
  431.  ENDC
  432.  IFC '\2','NOFETCH'
  433.  MOVE.W #$04000,_intena
  434.  ADDQ.B #1,IDNestCnt(\1)
  435.  MEXIT
  436.  ENDC
  437.  IFNC '\1',''
  438.  MOVE.L 4,\1
  439.  MOVE.W #$04000,_intena
  440.  ADDQ.B #1,IDNestCnt(\1)
  441.  MEXIT
  442.  ENDC
  443.  ENDM
  444. ENABLE MACRO
  445.  IFC '\1',''
  446.  SUBQ.B #1,IDNestCnt(A6)
  447.  BGE.S ENABLE\@
  448.  MOVE.W #$0C000,_intena
  449. ENABLE\@
  450.  MEXIT
  451.  ENDC
  452.  IFC '\2','NOFETCH'
  453.  SUBQ.B #1,IDNestCnt(\1)
  454.  BGE.S ENABLE\@
  455.  MOVE.W #$0C000,_intena
  456. ENABLE\@
  457.  MEXIT
  458.  ENDC
  459.  IFNC '\1',''
  460.  MOVE.L 4,\1
  461.  SUBQ.B #1,IDNestCnt(\1)
  462.  BGE.S ENABLE\@
  463.  MOVE.W #$0C000,_intena
  464. ENABLE\@
  465.  MEXIT
  466.  ENDC
  467.  ENDM
  468. TASK_ABLES MACRO
  469.  XREF _LVOPermit
  470.  ENDM
  471. FORBID MACRO
  472.  IFC '\1',''
  473.  ADDQ.B #1,TDNestCnt(A6)
  474.  MEXIT
  475.  ENDC
  476.  IFC '\2','NOFETCH'
  477.  ADDQ.B #1,TDNestCnt(\1)
  478.  MEXIT
  479.  ENDC
  480.  IFNC '\1',''
  481.  MOVE.L 4,\1
  482.  ADDQ.B #1,TDNestCnt(\1)
  483.  MEXIT
  484.  ENDC
  485.  ENDM
  486. PERMIT MACRO
  487.  IFC '\1',''
  488.  JSR _LVOPermit(A6)
  489.  MEXIT
  490.  ENDC
  491.  IFC '\2','NOFETCH'
  492.  EXG.L A6,\1
  493.  JSR _LVOPermit(A6)
  494.  EXG.L A6,\1
  495.  MEXIT
  496.  ENDC
  497.  IFNC '\1',''
  498.  MOVE.L A6,-(SP)
  499.  MOVE.L 4,A6
  500.  JSR _LVOPermit(A6)
  501.  MOVE.L (SP)+,A6
  502.  MEXIT
  503.  ENDC
  504.  ENDM
  505. UTILITYNAME MACRO
  506.  DC.B 'utility.library',0
  507.  ENDM
  508. AUDIONAME MACRO
  509.  DC.B 'audio.device',0
  510.  ENDM
  511. BBID_DOS MACRO
  512.  dc.b 'DOS',0
  513.  ENDM
  514. BBID_KICK MACRO
  515.  dc.b 'KICK'
  516.  ENDM
  517. M_ASM MACRO
  518.  DC.B '>1'
  519.  ENDM
  520. M_AWM MACRO
  521.  DC.B '?7'
  522.  ENDM
  523. PARALLELNAME MACRO
  524.  dc.b 'parallel.device',0
  525.  ds.w 0
  526.  ENDM
  527. SERIALNAME MACRO
  528.  dc.b 'serial.device',0
  529.  dc.w 0
  530.  ENDM
  531. TIMERNAME MACRO
  532.  DC.B 'timer.device',0
  533.  DS.W 0
  534.  ENDM
  535. TD_NAME MACRO
  536.  DC.B 'trackdisk.device',0
  537.  DS.W 0
  538.  ENDM
  539. DOSNAME MACRO
  540.  DC.B 'dos.library',0
  541.  ENDM
  542. BPTR MACRO
  543.  LONG \1
  544.  ENDM
  545. BSTR MACRO
  546.  LONG \1
  547.  ENDM
  548. LIBENT MACRO
  549. _LVO\1 EQU count
  550. count SET count-vsize
  551.  ENDM
  552. InitAnimate MACRO
  553.  CLR.L \1
  554.  ENDM
  555. RemBob MACRO
  556.  OR.W #BF_BOBSAWAY,b_BobFlags+\1
  557.  ENDM
  558. GRAPHICSNAME MACRO
  559.  DC.B 'graphics.library',0
  560.  ENDM
  561. OTSUFFIX MACRO
  562.  dc.b '.otag',0
  563.  ds.w 0
  564.  ENDM
  565. OTE_Bullet MACRO
  566.  dc.b 'bullet',0
  567.  ds.w 0
  568.  ENDM
  569. AslName MACRO
  570.  DC.B 'asl.library',0
  571.  ENDM
  572. EXPANSIONNAME MACRO
  573.  dc.b 'expansion.library',0
  574.  ENDM
  575. GTMENU_USERDATA MACRO
  576.  move.l mu_SIZEOF(\1),\2
  577.  ENDM
  578. GTMENUITEM_USERDATA MACRO
  579.  move.l mi_SIZEOF(\1),\2
  580.  ENDM
  581. MENU_USERDATA MACRO
  582.  move.l mi_SIZEOF(\1),\2
  583.  ENDM
  584. SizeNVData MACRO
  585.  move.l -4(/1),/2
  586.  subq.l #4,/2
  587.  ENDM
  588. DATATYPESCLASS MACRO
  589.  DC.B 'datatypesclass',0
  590.  ENDM
  591. PICTUREDTCLASS MACRO
  592.  dc.b 'picture.datatype',0
  593.  ENDM
  594. SOUNDDTCLASS MACRO
  595.  DC.B 'sound.datatype',0
  596.  ENDM
  597. ANIMATIONDTCLASS MACRO
  598.  DC.B 'animation.datatype',0
  599.  ENDM
  600. BATTCLOCKNAME MACRO
  601.  dc.b 'battclock.resource',0
  602.  ds.w 0
  603.  ENDM
  604. BATTMEMNAME MACRO
  605.  dc.b 'battmem.resource',0
  606.  ds.w 0
  607.  ENDM
  608. CARDRESNAME MACRO
  609.  dc.b 'card.resource',0
  610.  ds.w 0
  611.  ENDM
  612. RESINIT MACRO
  613.  IFC '\1',''
  614. COUNT_RES SET RES_USERDEF
  615.  ENDC
  616.  IFNC '\1',''
  617. COUNT_RES SET \1
  618.  ENDC
  619.  ENDM
  620. RESDEF MACRO
  621. \1 EQU COUNT_RES
  622. COUNT_RES SET COUNT_RES-LIB_VECTSIZE
  623.  ENDM
  624. CIAANAME MACRO
  625.  DC.B 'ciaa.resource',0
  626.  ENDM
  627. CIABNAME MACRO
  628.  DC.B 'ciab.resource',0
  629.  ENDM
  630. DISKNAME MACRO
  631.  DC.B 'disk.resource',0
  632.  DS.W 0
  633.  ENDM
  634. FSRNAME MACRO
  635.  dc.b 'FileSystem.resource',0
  636.  ENDM
  637. MISCNAME MACRO
  638.  DC.B 'misc.resource',0
  639.  CNOP 0,2
  640.  ENDM
  641. POTGONAME MACRO
  642.  dc.b 'potgo.resource',0
  643.  ds.w 0
  644.  ENDM
  645. RXSLIBNAME MACRO
  646.  dc.b 'rexxsyslib.library',0
  647.  ENDM
  648. RXSDIR MACRO
  649.  dc.b 'REXX',0
  650.  ENDM
  651. RXSTNAME MACRO
  652.  dc.b 'ARexx',0
  653.  ENDM
  654. ICONNAME MACRO
  655.  DC.B 'icon.library',0
  656.  ENDM
  657. WORKBENCH_NAME MACRO
  658.  dc.b 'workbench.library',0
  659.  ds.w 0
  660.  ENDM
  661. TLnm: MACRO
  662.  IFEQ \1-1
  663.  dc.b NM_TITLE,0
  664.  ENDC
  665.  IFEQ \1-2
  666.  dc.b NM_ITEM,0
  667.  ENDC
  668.  IFEQ \1-3
  669.  dc.b NM_SUB,0
  670.  ENDC
  671.  IFGE \1-4
  672.  dc.b NM_END,0
  673.  ENDC
  674.  IFEQ \2+1
  675.  dc.l NM_BARLABEL
  676.  ENDC
  677.  IFNE \2+1
  678.  dc.l \2
  679.  ENDC
  680.  IFGE NARG-3
  681.  dc.l \3
  682.  ENDC
  683.  IFLT NARG-3
  684.  dc.l 0
  685.  ENDC
  686.  IFGE NARG-4
  687.  dc.w \4
  688.  ENDC
  689.  IFLT NARG-4
  690.  dc.w 0
  691.  ENDC
  692.  IFGE NARG-5
  693.  dc.l \5,0
  694.  ENDC
  695.  IFLT NARG-5
  696.  dc.l 0,0
  697.  ENDC
  698.  ENDM
  699. TLDo: MACRO
  700.  move.l a6,-(a7)
  701.  move.l xxp_tanb(a4),a6
  702.  jsr _LVOTL\1(a6)
  703.  move.l (a7)+,a6
  704.  ENDM
  705. TLfsub: MACRO
  706.  move.l d0,-(a7)
  707.  move.l \1,d0
  708.  TLDo Fsub
  709.  move.l (a7)+,d0
  710.  ENDM
  711. TLstrbuf: MACRO
  712.  move.l d0,-(a7)
  713.  move.l \1,d0
  714.  TLDo Strbuf
  715.  move.l (a7)+,d0
  716.  ENDM
  717. TLstra0: MACRO
  718.  move.l d0,-(a7)
  719.  move.l \1,d0
  720.  TLDo Stra0
  721.  move.l (a7)+,d0
  722.  ENDM
  723. TLerror: MACRO
  724.  TLDo Error
  725.  tst.l d0
  726.  eori #-1,CCR
  727.  ENDM
  728. TLopenread: MACRO
  729.  TLDo Openread
  730.  tst.l D0
  731.  ENDM
  732. TLopenwrite: MACRO
  733.  TLDo Openwrite
  734.  tst.l D0
  735.  ENDM
  736. TLwritefile: MACRO
  737.  movem.l d2-d3,-(a7)
  738.  move.l \1,d2
  739.  move.l \2,d3
  740.  TLDo Writefile
  741.  movem.l (a7)+,d2-d3
  742.  tst.l xxp_errn(a4)
  743.  eori #-1,CCR
  744.  ENDM
  745. TLreadfile: MACRO
  746.  movem.l d2-d3,-(a7)
  747.  move.l \1,d2
  748.  move.l \2,d3
  749.  TLDo Readfile
  750.  movem.l (a7)+,d2-d3
  751.  tst.l xxp_errn(a4)
  752.  eori #-1,CCR
  753.  ENDM
  754. TLclosefile: MACRO
  755.  TLDo Closefile
  756.  ENDM
  757. TLaschex: MACRO
  758.  move.l \1,a0
  759.  TLDo Aschex
  760.  tst.l d0
  761.  ENDM
  762. TLhexasc: MACRO
  763.  move.l d0,-(a7)
  764.  move.l \1,d0
  765.  move.l \2,a0
  766.  TLDo Hexasc
  767.  move.l (a7)+,d0
  768.  ENDM
  769. TLoutput: MACRO
  770.  move.l d0,-(a7)
  771.  TLDo Output
  772.  move.l (a7)+,d0
  773.  ENDM
  774. TLinput: MACRO
  775.  move.l d0,-(a7)
  776.  TLDo Input
  777.  move.l (a7)+,d0
  778.  ENDM
  779. TLpublic: MACRO
  780.  move.l \1,d0
  781.  TLDo Public
  782.  tst.l d0
  783.  ENDM
  784. TLchip: MACRO
  785.  move.l \1,d0
  786.  TLDo Chip
  787.  tst.l d0
  788.  ENDM
  789. TLprogdir: MACRO
  790.  TLDo Progdir
  791.  ENDM
  792. TLkeyboard: MACRO
  793.  TLDo Keyboard
  794.  ENDM
  795. TLwindow: MACRO
  796.  movem.l d1-d7/a0,-(a7)
  797.  move.l \1,d0
  798.  IFGT NARG-1
  799.  move.l \2,d1
  800.  move.l \3,d2
  801.  move.l \4,d3
  802.  move.l \5,d4
  803.  move.l \6,d5
  804.  move.l \7,d6
  805.  move.l \8,d7
  806.  IFGE NARG-9
  807.  move.l \9,a0
  808.  ENDC
  809.  ENDC
  810.  TLDo Window
  811.  movem.l (a7)+,d1-d7/a0
  812.  tst.l d0
  813.  ENDM
  814. TLwclose: MACRO
  815.  TLDo Wclose
  816.  ENDM
  817. TLtext: MACRO
  818.  movem.l d0-d1,-(a7)
  819.  move.l \1,d0
  820.  move.l \2,d1
  821.  TLDo Text
  822.  movem.l (a7)+,d0-d1
  823.  ENDM
  824. TLtsize: MACRO
  825.  TLDo Tsize
  826.  ENDM
  827. TLwfront: MACRO
  828.  TLDo Wfront
  829.  ENDM
  830. TLgetfont: MACRO
  831.  movem.l d0-d1/a0,-(a7)
  832.  move.l \1,a0
  833.  move.l \2,d0
  834.  move.l \3,d1
  835.  TLDo Getfont
  836.  movem.l (a7)+,d0-d1/a0
  837.  ENDM
  838. TLnewfont: MACRO
  839.  movem.l d0-d2,-(a7)
  840.  move.l \1,d0
  841.  move.l \2,d1
  842.  moveq #0,d2
  843.  IFGE NARG-3
  844.  move.l \3,d2
  845.  ENDC
  846.  TLDo Newfont
  847.  tst.l D0
  848.  movem.l (a7)+,d0-d2
  849.  ENDM
  850. TLaslfont: MACRO
  851.  movem.l d0-d1,-(a7)
  852.  move.l \1,d0
  853.  TLDo Aslfont
  854.  tst.l d0
  855.  movem.l (a7)+,d0-d1
  856.  ENDM
  857. TLaslfile: MACRO
  858.  movem.l d1/a0-a1,-(a7)
  859.  move.l \1,a0
  860.  move.l \2,a1
  861.  move.l \3,d0
  862.  moveq #1,d1
  863.  IFC '\4','sv'
  864.  moveq #-1,d1
  865.  ENDC
  866.  TLDo Aslfile
  867.  movem.l (a7)+,d1/a0-a1
  868.  tst.l d0
  869.  ENDM
  870. TLwslof: MACRO
  871.  TLDo Wslof
  872.  ENDM
  873. TLreqbev: MACRO
  874.  movem.l d0-d5/a0,-(a7)
  875.  move.l \1,d0
  876.  move.l \2,d1
  877.  move.l \3,d2
  878.  move.l \4,d3
  879.  and.l #$FFFF,d0
  880.  IFGE NARG-5
  881.  IFC '\5','rec'
  882.  bset #31,d0
  883.  ENDC
  884.  IFC '\5','box'
  885.  bset #30,d0
  886.  ENDC
  887.  ENDC
  888.  IFGE NARG-6
  889.  IFNC '\6',''
  890.  move.l \6,a0
  891.  bset #31,d1
  892.  ENDC
  893.  ENDC
  894.  IFGE NARG-7
  895.  bset #29,d0
  896.  move.l \7,d4
  897.  ENDC
  898.  IFEQ NARG-7
  899.  moveq #2,d5
  900.  ENDC
  901.  IFGE NARG-8
  902.  move.l \8,d5
  903.  ENDC
  904.  TLDo Reqbev
  905.  tst.l xxp_errn(a4)
  906.  eori.w #-1,CCR
  907.  movem.l (a7)+,d0-d5/a0
  908.  ENDM
  909. TLreqarea: MACRO
  910.  movem.l d0-d4/a0,-(a7)
  911.  move.l \1,d0
  912.  move.l \2,d1
  913.  move.l \3,d2
  914.  move.l \4,d3
  915.  IFGE NARG-5
  916.  IFNC '\5',''
  917.  bset #29,d0
  918.  move.l \5,d4
  919.  ENDC
  920.  ENDC
  921.  IFGE NARG-6
  922.  bset #31,d1
  923.  move.l \6,a0
  924.  ENDC
  925.  TLDo Reqarea
  926.  tst.l xxp_errn(a4)
  927.  eori.w #-1,CCR
  928.  movem.l (a7)+,d0-d4/a0
  929.  ENDM
  930. TLreqcls: MACRO
  931.  TLDo Reqcls
  932.  ENDM
  933. TLreqfull: MACRO
  934.  TLDo Reqfull
  935.  ENDM
  936. TLreqchoose: MACRO
  937.  move.l d1,-(a7)
  938.  moveq #0,d1
  939.  IFEQ NARG-2
  940.  move.l \1,d0
  941.  move.l \2,d1
  942.  ENDC
  943.  TLDo Reqchoose
  944.  move.l (a7)+,d1
  945.  tst.l d0
  946.  ENDM
  947. TLreqinput: MACRO
  948.  movem.l d1-d3,-(a7)
  949.  move.l \1,d0
  950.  moveq #0,d1
  951.  moveq #20,d2
  952.  IFGE NARG-2
  953.  IFC '\2','num'
  954.  moveq #-1,d1
  955.  moveq #4,d2
  956.  ENDC
  957.  ENDC
  958.  IFGE NARG-2
  959.  IFC '\2','hex'
  960.  moveq #1,d1
  961.  moveq #8,d2
  962.  ENDC
  963.  ENDC
  964.  IFGE NARG-3
  965.  move.l \3,d2
  966.  ENDC
  967.  moveq #0,d3
  968.  IFGE NARG-4
  969.  move.l \4,d3
  970.  ENDC
  971.  TLDo Reqinput
  972.  move.l d0,d1
  973.  move.l xxp_valu(a4),d0
  974.  tst.l d1
  975.  movem.l (a7)+,d1-d3
  976.  ENDM
  977. TLreqedit: MACRO
  978.  movem.l d1/a0,-(a7)
  979.  move.l \1,d0
  980.  move.l \2,d1
  981.  IFNC '\3','0'
  982.  IFNC '\3','1'
  983.  move.l \3,a0
  984.  TLDo Reqedit
  985.  movem.l (a7)+,d1/a0
  986.  tst.l xxp_errn(a4)
  987.  eori.w #-1,CCR
  988.  MEXIT
  989.  ENDC
  990.  ENDC
  991.  movem.l a1/a5,-(a7)
  992.  sub.w #100,a7
  993.  move.l a7,a1
  994.  move.l #xxp_xtext,(a1)+
  995.  move.l a4,(a1)+
  996.  IFC '\3','1'
  997.  move.l #xxp_xstyl,(a1)+
  998.  move.l xxp_FWork(a4),(a1)
  999.  add.l #256,(a1)+
  1000.  move.l #xxp_xfont,(a1)+
  1001.  move.l xxp_AcWind(a4),a5
  1002.  clr.w (a1)+
  1003.  move.w xxp_Fnum(a5),(a1)+
  1004.  move.l #xxp_xcspc,(a1)+
  1005.  clr.w (a1)+
  1006.  move.w xxp_Tspc(a5),(a1)+
  1007.  ENDC
  1008.  move.l #xxp_xmaxc,(a1)+
  1009.  move.l #20,(a1)+
  1010.  IFGE NARG-8
  1011.  IFC '\8','num'
  1012.  move.l #4,-4(a1)
  1013.  ENDC
  1014.  IFC '\8','hex'
  1015.  move.l #8,-4(a1)
  1016.  ENDC
  1017.  ENDC
  1018.  IFGE NARG-4
  1019.  IFNC '\4',''
  1020.  move.l \4,-4(a1)
  1021.  ENDC
  1022.  ENDC
  1023.  IFGE NARG-5
  1024.  IFNC '\5',''
  1025.  move.l #xxp_xmaxt,(a1)+
  1026.  move.l \5,(a1)+
  1027.  ENDC
  1028.  ENDC
  1029.  IFGE NARG-6
  1030.  IFNC '\6',''
  1031.  move.l #xxp_xmaxw,(a1)+
  1032.  move.l \6,(a1)+
  1033.  ENDC
  1034.  ENDC
  1035.  IFGE NARG-7
  1036.  IFNC '\7',''
  1037.  move.l #xxp_xmenu,(a1)+
  1038.  move.l \7,(a1)+
  1039.  ENDC
  1040.  ENDC
  1041.  IFGE NARG-8
  1042.  IFNC '\8',''
  1043.  move.l xxp_xtask,(a1)+
  1044.  clr.l (a1)+
  1045.  IFC '\8','num'
  1046.  move.l #xxp_xtdec,-4(a1)
  1047.  ENDC
  1048.  IFC \'8','hex'
  1049.  move.l #xxp_xthex,-4(a1)
  1050.  ENDC
  1051.  ENDC
  1052.  ENDC
  1053.  move.l #xxp_xiclr,(a1)+
  1054.  move.l #-1,(a1)+
  1055.  move.l #xxp_xtral,(a1)+
  1056.  move.l #-1,(a1)+
  1057.  move.l #xxp_xforb,(a1)+
  1058.  IFC '\3','0'
  1059.  move.l #xxp_xesty,(a1)+
  1060.  ENDC
  1061.  IFC '\3','1'
  1062.  clr.l (a1)+
  1063.  ENDC
  1064.  clr.l (a1)
  1065.  move.l a7,a0
  1066.  TLDo Reqedit
  1067.  add.w #100,a7
  1068.  movem.l (a7)+,a1/a5
  1069.  movem.l (a7)+,d1/a0
  1070.  tst.l xxp_errn(a4)
  1071.  eori.w #-1,CCR
  1072.  ENDM
  1073. TLreqshow: MACRO
  1074.  movem.l d1-d2/a5,-(a7)
  1075.  move.l \1,a0
  1076.  move.l \2,d0
  1077.  move.l \3,d1
  1078.  move.l \4,d2
  1079.  moveq #0,d3
  1080.  IFGE NARG-5
  1081.  move.l \5,d3
  1082.  ENDC
  1083.  IFGE NARG-6
  1084.  IFC 'seek','\6'
  1085.  bset #31,d2
  1086.  ENDC
  1087.  IFC 'smart','\6'
  1088.  bset #31,d2
  1089.  bset #30,d2
  1090.  ENDC
  1091.  ENDC
  1092.  TLDo Reqshow
  1093.  movem.l (a7)+,d1-d2/a5
  1094.  tst.l d0
  1095.  ENDM
  1096. TLassdev: MACRO
  1097.  TLDo Assdev
  1098.  tst.l d0
  1099.  ENDM
  1100. TLreqmenu: MACRO
  1101.  movem.l d0/a0,-(a7)
  1102.  move.l \1,a0
  1103.  TLDo Reqmenu
  1104.  tst.l d0
  1105.  movem.l (a7)+,d0/a0
  1106.  ENDM
  1107. TLreqmuset: MACRO
  1108.  TLDo Reqmuset
  1109.  ENDM
  1110. TLreqmuclr: MACRO
  1111.  TLDo Reqmuclr
  1112.  ENDM
  1113. TLreqinfo: MACRO
  1114.  movem.l d1-d2,-(a7)
  1115.  move.l \1,d0
  1116.  moveq #1,d1
  1117.  moveq #1,d2
  1118.  IFNE NARG-1
  1119.  move.l \2,d1
  1120.  IFNE NARG-2
  1121.  move.l \3,d2
  1122.  ENDC
  1123.  ENDC
  1124.  TLDo Reqinfo
  1125.  movem.l (a7)+,d1-d2
  1126.  tst.l d0
  1127.  ENDM
  1128. TLwpoll: MACRO
  1129.  TLDo Wpoll
  1130.  tst.l d0
  1131.  ENDM
  1132. TLtrim: MACRO
  1133.  movem.l d0-d1,-(a7)
  1134.  move.l \1,d0
  1135.  move.l \2,d1
  1136.  TLDo Trim
  1137.  tst.l xxp_errn(a4)
  1138.  eori.w #-1,CCR
  1139.  movem.l (a7)+,d0-d1
  1140.  ENDM
  1141. TLwsub: MACRO
  1142.  move.l d0,-(a7)
  1143.  move.l \1,d0
  1144.  TLDo Wsub
  1145.  move.l (a7)+,d0
  1146.  ENDM
  1147. TLwpop: MACRO
  1148.  move.l d0,-(a7)
  1149.  move.l \1,d0
  1150.  TLDo Wpop
  1151.  move.l (a7)+,d0
  1152.  ENDM
  1153. TLmultiline: MACRO
  1154.  movem.l d0-d1,-(a7)
  1155.  move.l \1,d0
  1156.  move.l \2,d1
  1157.  TLDo Multiline
  1158.  movem.l (a7)+,d0-d1
  1159.  tst.l xxp_errn(a4)
  1160.  eori.w #-1,ccr
  1161.  ENDM
  1162. TLwupdate: MACRO
  1163.  TLDo Wupdate
  1164.  ENDM
  1165. TLwcheck: MACRO
  1166.  movem.l d0-d1,-(a7)
  1167.  TLDo Wcheck
  1168.  tst.l d0
  1169.  movem.l (a7)+,d0-d1
  1170.  ENDM
  1171. TLfloat: MACRO
  1172.  move.l \1,a0
  1173.  move.l \2,a1
  1174.  TLDo Float
  1175.  tst.w d0
  1176.  eori.w #-1,ccr
  1177.  ENDM
  1178. TLbusy: MACRO
  1179.  TLDo Busy
  1180.  ENDM
  1181. TLunbusy: MACRO
  1182.  TLDo Unbusy
  1183.  ENDM
  1184. TLreqcolor: MACRO
  1185.  move.l \1,d0
  1186.  TLDo Reqcolor
  1187.  tst.l d0
  1188.  ENDM
  1189. TLonmenu: MACRO
  1190.  movem.l d0-d2,-(a7)
  1191.  move.l \1,d0
  1192.  move.l \2,d1
  1193.  move.l \3,d2
  1194.  TLDo Onmenu
  1195.  movem.l (a7)+,d0-d2
  1196.  ENDM
  1197. TLoffmenu: MACRO
  1198.  movem.l d0-d2,-(a7)
  1199.  move.l \1,d0
  1200.  move.l \2,d1
  1201.  move.l \3,d2
  1202.  TLDo Offmenu
  1203.  movem.l (a7)+,d0-d2
  1204.  ENDM
  1205. TLprefdir: MACRO
  1206.  movem.l d0/a0,-(a7)
  1207.  move.l \1,a0
  1208.  moveq #0,d0
  1209.  IFC '\2','save'
  1210.  moveq #-1,d0
  1211.  ENDC
  1212.  TLDo Prefdir
  1213.  movem.l (a7)+,d0/a0
  1214.  ENDM
  1215. TLpreffil: MACRO
  1216.  movem.l d0-d3/a0,-(a7)
  1217.  move.l \1,a0
  1218.  moveq #0,d0
  1219.  IFC '\2','save'
  1220.  moveq #-1,d0
  1221.  ENDC
  1222.  move.l \3,d2
  1223.  move.l \4,d3
  1224.  TLDo Preffil
  1225.  movem.l (a7)+,d0-d3/a0
  1226.  ENDM
  1227. TLbad: MACRO
  1228.  move.l d0,-(a7)
  1229.  move.l \1,d0
  1230.  TLDo Strbuf
  1231.  TLDo Output
  1232.  move.l (a7)+,d0
  1233.  subq.w #1,xxp_ackn(a4)
  1234.  ENDM
  1235. TLstring: MACRO
  1236.  TLstrbuf \1
  1237.  TLtrim \2,\3
  1238.  ENDM
  1239. TLoutstr: MACRO
  1240.  TLstrbuf \1
  1241.  TLoutput
  1242.  ENDM
  1243. TLwindow0: MACRO
  1244.  TLwindow #-1
  1245.  TLwindow #0,#0,#0,#640,#100,xxp_Width(a4),xxp_Height(a4),#0,#st_1
  1246.  ENDM
  1247. TLscreen: MACRO
  1248.  movem.l d0-d1/a0-a1/a6,-(a7)
  1249.  sub.l #52,a7
  1250.  move.l a7,a0
  1251.  move.l #SA_Width,(a0)+
  1252.  move.l #STDSCREENWIDTH,(a0)+
  1253.  move.l #SA_Height,(a0)+
  1254.  move.l #STDSCREENHEIGHT,(a0)+
  1255.  move.l #SA_Depth,(a0)+
  1256.  move.l \1,(a0)+
  1257.  move.l #SA_Title,(a0)+
  1258.  move.l \2,(a0)+
  1259.  move.l #SA_Pens,(a0)+
  1260.  move.l \3,(a0)+
  1261.  move.l #SA_DisplayID,(a0)+
  1262.  IFEQ NARG-3
  1263.  move.l #HIRES_KEY,(a0)+
  1264.  ENDC
  1265.  IFEQ NARG-4
  1266.  move.l \4,(a0)+
  1267.  ENDC
  1268.  move.l #TAG_END,(a0)+
  1269.  move.l xxp_intb(a4),a6
  1270.  sub.l a0,a0
  1271.  move.l a7,a1
  1272.  jsr _LVOOpenScreenTagList(a6)
  1273.  clr.w xxp_Public(a4)
  1274.  add.l #52,a7
  1275.  move.l d0,xxp_Screen(a4)
  1276.  movem.l (a7)+,d0-d1/a0-a1/a6
  1277.  ENDM
  1278. TLattach: MACRO
  1279.  movem.l d0-d1/a0,-(a7)
  1280.  move.l \1,a0
  1281.  move.l a0,xxp_Mmem(a5)
  1282.  clr.b (a0)+
  1283.  move.l a0,xxp_Mtop(a5)
  1284.  subq.l #1,a0
  1285.  move.l \2,d0
  1286.  move.l d0,xxp_Mmsz(a5)
  1287.  add.l d0,a0
  1288.  clr.b -34(a0)
  1289.  clr.b -164(a0)
  1290.  clr.l xxp_Mcrr(a5)
  1291.  clr.l xxp_Mtpl(a5)
  1292.  move.w #76,xxp_Mmxc(a5)
  1293.  movem.l (a7)+,d0-d1/a0
  1294.  ENDM
  1295. TLgetilbm: MACRO
  1296.  movem.l d0-d1/a1,-(a7)
  1297.  moveq #-1,d0
  1298.  move.l \1,d1
  1299.  move.l \2,a1
  1300.  IFGE NARG-3
  1301.  IFNC '\3',''
  1302.  moveq #0,d0
  1303.  ENDC
  1304.  ENDC
  1305.  IFGE NARG-4
  1306.  bset #31,d1
  1307.  ENDC
  1308.  TLDo Getilbm
  1309.  movem.l (a7)+,d0-d1/a1
  1310.  tst.l xxp_errn(a4)
  1311.  eori.w #-1,CCR
  1312.  ENDM
  1313. TLputilbm: MACRO
  1314.  movem.l d0-d3/a0,-(a7)
  1315.  move.l \1,d0
  1316.  move.l \2,d1
  1317.  move.l \3,d2
  1318.  move.l \4,d3
  1319.  move.l \5,a0
  1320.  TLDo Putilbm
  1321.  movem.l (a7)+,d0-d3/a0
  1322.  tst.l xxp_errn(a4)
  1323.  eori.w #-1,CCR
  1324.  ENDM
  1325. TLresize: MACRO
  1326.  movem.l d0-d5/a0,-(a7)
  1327.  move.l \1,d0
  1328.  move.l \2,d1
  1329.  move.l \3,d2
  1330.  move.l \4,d3
  1331.  move.l \5,d4
  1332.  move.l \6,d5
  1333.  moveq #0,d6
  1334.  IFGE NARG-7
  1335.  IFNC '\7',''
  1336.  move.l \7,d6
  1337.  ENDC
  1338.  ENDC
  1339.  IFGE NARG-8
  1340.  move.l \8,a0
  1341.  bset #31,d1
  1342.  ENDC
  1343.  TLDo Resize
  1344.  movem.l (a7)+,d0-d5/a0
  1345.  ENDM
  1346. TLellipse: MACRO
  1347.  movem.l d0-d7/a0,-(a7)
  1348.  move.l \1,d0
  1349.  move.l \2,d1
  1350.  move.l \3,d2
  1351.  move.l \4,d3
  1352.  move.l \5,d4
  1353.  move.l \6,d5
  1354.  move.l \7,d6
  1355.  move.l \8,d7
  1356.  IFGE NARG-9
  1357.  IFNC '\9',''
  1358.  move.l \9,a0
  1359.  bset #31,d1
  1360.  ENDC
  1361.  IFGE NARG-10
  1362.  bset #31,d0
  1363.  ENDC
  1364.  ENDC
  1365.  TLDo Ellipse
  1366.  movem.l (a7)+,d0-d7/a0
  1367.  tst.l xxp_errn(a4)
  1368.  eori.w #-1,CCR
  1369.  ENDM
  1370. TLgetarea: MACRO
  1371.  movem.l d0-d3/a0,-(a7)
  1372.  move.l \1,d0
  1373.  move.l \2,d1
  1374.  move.l \3,d2
  1375.  move.l \4,d3
  1376.  move.l \5,a0
  1377.  TLDo Getarea
  1378.  tst.l d0
  1379.  movem.l (a7)+,d0-d3/a0
  1380.  ENDM
  1381. TLprogress: MACRO
  1382.  movem.l d0-d2,-(a7)
  1383.  move.l \1,d0
  1384.  move.l \2,d1
  1385.  moveq #0,d2
  1386.  IFGE NARG-3
  1387.  moveq #-1,d2
  1388.  IFC '\3','%'
  1389.  moveq #1,d2
  1390.  ENDC
  1391.  ENDC
  1392.  TLDo Progress
  1393.  movem.l (a7)+,d0-d2
  1394.  tst.l xxp_errn(a4)
  1395.  eori.w #-1,CCR
  1396.  ENDM
  1397. TLreqoff: MACRO
  1398.  TLDo Reqoff
  1399.  ENDM
  1400. TLhexasc16: MACRO
  1401.  movem.l d0-d1,-(a7)
  1402.  move.l \1,d0
  1403.  move.l \2,d1
  1404.  move.l \3,a0
  1405.  TLDo Hexasc16
  1406.  movem.l (a7)+,d0-d1
  1407.  ENDM
  1408. TLreqfont: MACRO
  1409.  move.l \1,d0
  1410.  TLDo Reqfont
  1411.  tst.l xxp_errn(a4)
  1412.  eori.w #-1,CCR
  1413.  ENDM
  1414. TLdata: MACRO
  1415.  movem.l d0-d1,-(a7)
  1416.  move.l \1,d0
  1417.  move.l \2,d1
  1418.  TLDo Data
  1419.  tst.l d0
  1420.  movem.l (a7)+,d0-d1
  1421.  ENDM
  1422. TLwscroll: MACRO
  1423.  movem.l d0-d1,-(a7)
  1424.  moveq #-1,d0
  1425.  IFC '\1','set'
  1426.  moveq #0,d0
  1427.  ENDC
  1428.  moveq #0,d1
  1429.  IFGE NARG-2
  1430.  IFC '\2','vert'
  1431.  moveq #-1,d1
  1432.  ENDC
  1433.  IFC '\2','horz'
  1434.  moveq #1,d1
  1435.  ENDC
  1436.  ENDC
  1437.  TLDo Wscroll
  1438.  movem.l (a7)+,d0-d1
  1439.  ENDM
  1440. TLbutmon: MACRO
  1441.  movem.l d1-d2,-(a7)
  1442.  move.l \1,d1
  1443.  move.l \2,d2
  1444.  TLDo Butmon
  1445.  tst.l d0
  1446.  movem.l (a7)+,d1-d2
  1447.  ENDM
  1448. TLbutstr: MACRO
  1449.  move.l a0,-(a7)
  1450.  move.l \1,a0
  1451.  TLDo Butstr
  1452.  move.l (a7)+,a0
  1453.  ENDM
  1454. TLbutprt: MACRO
  1455.  TLDo Butprt
  1456.  tst.l xxp_errn(a4)
  1457.  eori.w #-1,CCR
  1458.  ENDM
  1459. TLbuttxt: MACRO
  1460.  move.l a0,-(a7)
  1461.  move.l \1,a0
  1462.  TLDo Buttxt
  1463.  move.l (a7)+,a0
  1464.  tst.l xxp_errn(a4)
  1465.  eori.w #-1,CCR
  1466.  ENDM
  1467. TLslider: MACRO
  1468.  move.l a5,-(a7)
  1469.  move.l \1,a5
  1470.  TLDo Slider
  1471.  move.l (a7)+,a5
  1472.  tst.l xxp_errn(a4)
  1473.  eori.w #-1,CCR
  1474.  ENDM
  1475. TLpassword: MACRO
  1476.  move.l \1,d0
  1477.  TLDo Password
  1478.  tst.l d0
  1479.  ENDM
  1480. TLslimon: MACRO
  1481.  movem.l d0-d3,-(a7)
  1482.  move.l \1,d1
  1483.  move.l \2,d2
  1484.  move.l \3,d3
  1485.  TLDo Slimon
  1486.  tst.l d0
  1487.  movem.l (a7)+,d0-d3
  1488.  ENDM
  1489. TLreqredi: MACRO
  1490.  move.l a5,-(a7)
  1491.  move.l \1,a5
  1492.  TLDo Reqredi
  1493.  move.l (a7)+,a5
  1494.  ENDM
  1495. TLreqchek: MACRO
  1496.  movem.l d2-d3,-(a7)
  1497.  move.l \1,d2
  1498.  move.l \2,d3
  1499.  TLDo Reqchek
  1500.  movem.l (a7)+,d2-d3
  1501.  tst.l xxp_errn(a4)
  1502.  eori.w #-1,CCR
  1503.  ENDM
  1504. TLreqon: MACRO
  1505.  move.l \1,a5
  1506.  TLDo Reqon
  1507.  tst.l xxp_errn(a4)
  1508.  eori.w #-1,CCR
  1509.  ENDM
  1510. TLprefs: MACRO
  1511.  move.l d0,-(a7)
  1512.  moveq #1,d0
  1513.  IFGE NARG-1
  1514.  moveq #-1,d0
  1515.  ENDC
  1516.  TLDo Prefs
  1517.  move.l (a7)+,d0
  1518.  ENDM
  1519. TLmget: MACRO
  1520.  TLDo Mget
  1521.  ENDM
  1522. TLfreebmap: MACRO
  1523.  movem.l d0-d2/a0-a3/a6,-(a7)
  1524.  move.l xxp_sysb(a4),a6
  1525.  move.l \1,a3
  1526.  move.l a3,a2
  1527.  addq.l #bm_Planes,a2
  1528.  moveq #0,d2
  1529.  move.b bm_Depth(a3),d2
  1530.  subq.w #1,d2
  1531. .fbmp:
  1532.  move.l (a2)+,a1
  1533.  jsr _LVOFreeVec(a6)
  1534.  dbra d2,.fbmp
  1535.  move.l a3,a1
  1536.  jsr _LVOFreeVec(a6)
  1537.  movem.l (a7)+,d0-d2/a0-a3/a6
  1538.  ENDM
  1539. TLembed: MACRO
  1540.  ENDM
  1541. TLpict:MACRO
  1542.  movem.l d0-d2,-(a7)
  1543.  move.l \1,d0
  1544.  move.l \2,d1
  1545.  move.l \3,d2
  1546.  TLDo Pict
  1547.  movem.l (a7)+,d0-d2
  1548.  tst.l xxp_errn(a4)
  1549.  eori.w #-1,CCR
  1550.  ENDM
  1551. TLtabmon: MACRO
  1552.  movem.l d1-d3,-(a7)
  1553.  move.l \1,d0
  1554.  move.l \2,d1
  1555.  move.l \3,d2
  1556.  move.l \4,d3
  1557.  TLDo Tabmon
  1558.  movem.l (a7)+,d1-d3
  1559.  tst.l d0
  1560.  ENDM
  1561. TLtabs: MACRO
  1562.  movem.l d0-d3,-(a7)
  1563.  move.l \1,d0
  1564.  IFGE NARG-2
  1565.  move.l \2,d1
  1566.  IFGE NARG-3
  1567.  move.l \3,d2
  1568.  IFGE NARG-4
  1569.  move.l \4,d3
  1570.  ENDC
  1571.  ENDC
  1572.  ENDC
  1573.  TLDo Tabs
  1574.  movem.l (a7)+,d0-d3
  1575.  tst.l xxp_errn(a4)
  1576.  eori.w #-1,CCR
  1577.  ENDM
  1578. TLdropdown: MACRO
  1579.  movem.l d0-d7,-(a7)
  1580.  moveq #-1,d0
  1581.  IFC 'draw','\1'
  1582.  moveq #0,d0
  1583.  ENDC
  1584.  move.l \2,d1
  1585.  move.l \3,d2
  1586.  moveq #1,d3
  1587.  IFNC '','\4'
  1588.  move.l \4,d3
  1589.  ENDC
  1590.  move.l \5,d4
  1591.  move.l \6,d5
  1592.  moveq #0,d6
  1593.  IFGE NARG-7
  1594.  IFNC '','\7'
  1595.  move.l \7,d6
  1596.  ENDC
  1597.  ENDC
  1598.  moveq #7,d7
  1599.  IFGE NARG-8
  1600.  IFNC 'cycle','\8'
  1601.  move.l \8,d7
  1602.  ENDC
  1603.  IFC 'cycle','\8'
  1604.  moveq #-1,d7
  1605.  ENDC
  1606.  ENDC
  1607.  TLDo Dropdown
  1608.  IFNC 'draw','\1'
  1609.  move.l d0,(a7)
  1610.  ENDC
  1611.  movem.l (a7)+,d0-d7
  1612.  IFC 'draw','\1'
  1613.  tst.l xxp_errn(a4)
  1614.  eori.w #-1,CCR
  1615.  ENDC
  1616.  ENDM
  1617.